package ar.com.age.distribuidora.service.impl;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;

import ar.com.age.distribuidora.dao.EstadoChequeDao;
import ar.com.age.distribuidora.dao.LocalidadDao;
import ar.com.age.distribuidora.dao.MarcaDao;
import ar.com.age.distribuidora.dao.TipoIvaDao;
import ar.com.age.distribuidora.dao.TipoProductoDao;
import ar.com.age.distribuidora.dao.TipoRubroDao;
import ar.com.age.distribuidora.dao.UnidadMedidaDao;
import ar.com.age.distribuidora.dominio.EstadoCheque;
import ar.com.age.distribuidora.dominio.Localidad;
import ar.com.age.distribuidora.dominio.Marca;
import ar.com.age.distribuidora.dominio.TipoIva;
import ar.com.age.distribuidora.dominio.TipoProducto;
import ar.com.age.distribuidora.dominio.TipoRubro;
import ar.com.age.distribuidora.dominio.UnidadMedida;
import ar.com.age.distribuidora.service.ConfiguracionService;

public class ConfiguracionServiceImpl implements ConfiguracionService {
	private LocalidadDao localidadDao;
	private TipoProductoDao tipoProductoDao;
	private UnidadMedidaDao unidadMedidaDao;
	private MarcaDao marcaDao;
	private TipoRubroDao tipoRubroDao;
	private TipoIvaDao tipoIvaDao;
	private EstadoChequeDao estadoChequeDao;
	
	@Autowired(required = true)
	public void setLocalidadDao(LocalidadDao localidadDao) {
		this.localidadDao = localidadDao;
	}
	
	@Autowired(required = true)
	public void setTipoProductoDao(TipoProductoDao tipoProductoDao) {
		this.tipoProductoDao = tipoProductoDao;
	}
	
	@Autowired(required = true)
	public void setUnidadMedidaDao(UnidadMedidaDao unidadMedidaDao) {
		this.unidadMedidaDao = unidadMedidaDao;
	}
	@Autowired(required = true)
	public void setMarcaDao(MarcaDao marcaDao) {
		this.marcaDao = marcaDao;
	}
	@Autowired(required = true)
	public void setTipoRubroDao(TipoRubroDao tipoRubroDao) {
		this.tipoRubroDao = tipoRubroDao;
	}
	@Autowired(required = true)
	public void setTipoIvaDao(TipoIvaDao tipoIvaDao) {
		this.tipoIvaDao = tipoIvaDao;
	}
	@Autowired(required = true)
	public void setEstadoChequeDao(EstadoChequeDao estadoChequeDao) {
		this.estadoChequeDao = estadoChequeDao;
	}

	@Override
	public void eliminarLocalidad(Localidad localidad) {
		localidadDao.eliminar(localidad);
	}
	
	public void eliminarTipoProducto(TipoProducto tipoProducto){
		tipoProductoDao.eliminar(tipoProducto);
	}
	
	public void eliminarUnidadMedida(UnidadMedida unidadMedida){
		unidadMedidaDao.eliminar(unidadMedida);
	}

	@Override
	public void eliminarMarca(Marca marca) {
		marcaDao.eliminar(marca);
	}

	@Override
	public void eliminarRubro(TipoRubro tipoRubro) {
		tipoRubroDao.eliminar(tipoRubro);
	}

	@Override
	public void eliminarTipoIva(TipoIva tipoIva) {
		tipoIvaDao.eliminar(tipoIva);
	}

	@Override
	public void eliminarEstadoCheque(EstadoCheque estadoCheque) {
		estadoChequeDao.eliminar(estadoCheque);
	}

	@Override
	public List<TipoProducto> buscarTodosTiposProducto() {
		return tipoProductoDao.getAll();
	}

	@Override
	public List<Marca> buscarTodasLasMarcas() {	
		return marcaDao.getAll();
	}

}
